-
Notifications
You must be signed in to change notification settings - Fork 459
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Management canister API for threshold key derivation (vetKD) #3763
base: master
Are you sure you want to change the base?
Conversation
🤖 Here's your preview: https://6ke4v-3aaaa-aaaam-abc3q-cai.icp0.io |
…ints (#2633) This PR defines names and arguments of the new functions: - ReshareChainKey - VetKdPublicKey - VetKdEncryptedKey A corresponding interface spec PR can be found [here](dfinity/portal#3763). For now, all functions remain unimplemented. In addition, we implement routing of these methods by calling `route_idkg_message` with the correct `MasterPublicKeyId`. This function will be renamed and tested for the vet KD case in a follow up PR.
…ints (#2633) This PR defines names and arguments of the new functions: - ReshareChainKey - VetKdPublicKey - VetKdEncryptedKey A corresponding interface spec PR can be found [here](dfinity/portal#3763). For now, all functions remain unimplemented. In addition, we implement routing of these methods by calling `route_idkg_message` with the correct `MasterPublicKeyId`. This function will be renamed and tested for the vet KD case in a follow up PR.
docs/references/ic-interface-spec.md
Outdated
|
||
This call requires that the vetKD feature is enabled, and the `canister_id` meets the requirement of a canister id. Otherwise it will be rejected. | ||
|
||
### IC method `vetkd_encrypted_key` {#ic-vetkd_encrypted_key} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This does not mention any cycle cost.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Usually, e.g., for http_request endpoint of the mgmt canister, we say "Cycles to pay for the call must be explicitly transferred with the call, i.e., they are not automatically deducted from the caller's balance implicitly (e.g., as for inter-canister calls)."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, but it's not mentioned in this section, whereas it is mentioned in the section above, sign_with_schnorr.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, could you please add this, @fspreiss, if appropriate?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Proposes two new system APIs for the prospective threshold key derivation (vetKD) feature in the management canister.
Notes
Alternatives considered
We considered the following alternative API, where one would have two sets of API pairs: one pair for threshold key derivation, and a second one for threshold BLS signatures.
This alternative was discarded, however, because there is a concern that not all possible future use cases can be covered with this split API approach.
TODOs